Buffers are often used in networks for buffering network communication data. For example, in Optical Transport Networks (OTNs) a circular buffer or elastic store is typically used when mapping digital data to an OTN frame or vice versa, for example, in the conversion between a client's network communication data and the OTN transport frames.
As an example, a client may provide Ethernet data to an OTN network termination unit. The OTN network termination unit maps this Ethernet data to OTN frames for transmission over the OTN. The OTN network termination unit includes an elastic store that receives the Ethernet data at the rate provided by the client (e.g. 40 Gbps). The network termination unit reads the stored Ethernet data out of the elastic store and maps this Ethernet data to OTN frames at the rate of the OTN network.
The rate at which the Ethernet data is provided by the client and written to the elastic store may be relatively constant. However, the rate at which the Ethernet data is read from the elastic store and mapped to OTN frames is typically bursty in nature. This is because an OTN frame includes not only the encapsulated client data, but also overhead and forward error correction (FEC) data. Therefore, part of the transmission time of the OTN frame is dedicated to this overhead and FEC, and during this transmission time none of the client's data is transmitted. Thus, the client's data is read from the elastic store in bursts interspersed between periods of time during which none of the client's data is read (when overhead/FEC redundancy is being transmitted).
On average, the rate at which the client's data is written to the elastic store and the rate at which the client's data is read from the elastic store must be substantially the same in order to prevent constant buffer overflow or buffer underflow. However, the different rates at which data is written to the elastic store and at which the data is read from the elastic store during short-term periods of time require the elastic store to buffer the data.
Like reference numerals are used in different figures to denote similar elements.